#ifndef _EXPORT_
#define _EXPORT_

#include <QtCore>

//#if defined WIN32
//#	if defined LIBRARY_SHARED
//#		if defined BUILD_LIB
//#			define EXPORTED __declspec(dllexport)
//#		else
//#			define EXPORTED __declspec(dllimport)
//#		endif
//#	else
//#		define EXPORTED
//#	endif
//#else
//#	define EXPORTED
//#endif

//Copy from qglobal.h and modify to Opl use

#ifndef EXPORTED
#  if defined(Q_OS_WIN) || defined(Q_CC_NOKIAX86) || defined(Q_CC_RVCT)
#    define EXPORTED __declspec(dllexport)
#  elif defined(VISIBILITY_AVAILABLE)
#    define Q_DECL_EXPORT __attribute__((visibility("default")))
#  endif
#  ifndef EXPORTED
#    define EXPORTED
#  endif
#endif

#ifndef IMPORTED
#  if defined(Q_OS_WIN) || defined(Q_CC_NOKIAX86) || defined(Q_CC_RVCT)
#    define IMPORTED __declspec(dllimport)
#  else
#    define IMPORTED
#  endif
#endif



#if defined(Q_OS_WIN) || defined(Q_OS_SYMBIAN)
#  if !defined(BUILD_LIB)
#    if defined(QT_DLL)
#      undef QT_DLL
#    endif
#    if defined(CORE_SHARED)
#      define CORE_EXPORT EXPORTED
#    else
#      define CORE_EXPORT IMPORTED
#    endif
#   if defined(HELPERS_SHARED)
#      define HELPERS_EXPORT EXPORTED
#    else
#      define HELPERS_EXPORT IMPORTED
#    endif
#   if defined(GUI_SHARED)
#      define GUI_EXPORT EXPORTED
#    else
#      define GUI_EXPORT IMPORTED
#    endif
#   if defined(SCRIPTING_SHARED)
#      define SCRIPTING_EXPORT EXPORTED
#    else
#      define SCRIPTING_EXPORT IMPORTED
#    endif
#   if defined(EXTENSIONS_SHARED)
#      define EXTENSIONS_EXPORT EXPORTED
#    else
#      define EXTENSIONS_EXPORT IMPORTED
#    endif
#   if defined(CRYPTO_SHARED)
#      define CRYPTO_EXPORT EXPORTED
#    else
#      define CRYPTO_EXPORT IMPORTED
#    endif
#   if defined(PROTOCOL_SHARED)
#      define PROTOCOL_EXPORT EXPORTED
#    else
#      define PROTOCOL_EXPORT IMPORTED
#    endif
#  elif defined(BUILD_LIB)
#    define HELPERS_EXPORT IMPORTED
#  endif
#  define NO_DECLARED_NOT_DEFINED
#endif

#if !defined(CORE_EXPORT)
#  if defined(CORE_SHARED)
#    define CORE_EXPORT EXPORTED
#  else
#    define CORE_EXPORT
#  endif
#endif

#if !defined(HELPERS_EXPORT)
#  if defined(HELPERS_SHARED)
#    define HELPERS_EXPORT EXPORTED
#  else
#    define HELPERS_EXPORT
#  endif
#endif

#if !defined(CRYPTO_EXPORT)
#  if defined(CRYPTO_SHARED)
#    define CRYPTO_EXPORT EXPORTED
#  else
#    define CRYPTO_EXPORT
#  endif
#endif

#if !defined(PROTOCOL_EXPORT)
#  if defined(PROTOCOL_SHARED)
#    define PROTOCOL_EXPORT EXPORTED
#  else
#    define PROTOCOL_EXPORT
#  endif
#endif

#if !defined(GUI_EXPORT)
#  if defined(GUI_SHARED)
#    define GUI_EXPORT EXPORTED
#  else
#    define GUI_EXPORT
#  endif
#endif

#if !defined(SCRIPTING_EXPORT)
#  if defined(SCRIPTING_SHARED)
#    define SCRIPTING_EXPORT EXPORTED
#  else
#    define SCRIPTING_EXPORT
#  endif
#endif

#if !defined(EXTENSIONS_EXPORT)
#  if defined(EXTENSIONS_SHARED)
#    define EXTENSIONS_EXPORT EXPORTED
#  else
#    define EXTENSIONS_EXPORT
#  endif
#endif


#endif //_EXPORT_
